Decision trees are used to categorize values in a data set through a series of limited-option steps. The steps can be binary, wherein each step is limited to two possible choices, thus producing a binary decision tree. As an alternative, each step may permit, or require, a greater number of options. Each data value eventually is represented by one of the bottom-most nodes in the tree, called leaf nodes. The greater the number of options at each step, the lesser will be the number of steps from the top of the tree, called the root node, to the leaf nodes. For example, a binary decision tree for a data set containing 32 data values would have no fewer than five steps from the root node to the leaf nodes. However, a decision tree for the same data set that permitted four options at each step potentially could have only three steps from the root node to the leaf nodes.
Traditionally, such decision trees are constructed beginning at the root node. From there, the process of constructing the tree works down, setting up limited-option steps until each data value is properly represented by a single leaf node. The intermediate nodes in a decision tree, those between the root node and the leaf nodes, are referred to as middle nodes.